perm filename S2.XGP[D,LES]3 blob sn#406253 filedate 1978-12-22 generic text, type T, neo UTF8
/LMAR=0/XLINE=3/FONT#0=BAXL30/FONT#1=BAXI30/FONT#2=BAXB30/FONT#3=BAXS30/FONT#4=METLB/FONT#5=METMB/FONT#6=GACL25



␈↓ ↓N␈↓¬␈↓ ¬bNovember 1978




␈↓ ↓N␈↓¬␈↓ ε	Proposal to

␈↓ ↓N␈↓¬␈↓ ¬
␈↓∧University of California
␈↓ ↓N␈↓∧␈↓ ∧DLawrence Livermore Laboratory␈↓¬

␈↓ ↓N␈↓¬␈↓ ¬{for design of

␈↓ ↓N␈↓¬␈↓ βe␈↓∧An Operating System for the S-1 Computer␈↓¬


␈↓ ↓N␈↓¬␈↓ βvJohn McCarthy, Professor of Computer Science
␈↓ ↓N␈↓¬␈↓ β9Forest Baskett, Associate Professor of Computer Science
␈↓ ↓N␈↓¬␈↓ ¬∪Co-principal Investigators










␈↓ ↓N␈↓¬␈↓ ε≡Abstract


␈↓ ↓N␈↓¬The␈α
Stanford␈α
Artificial␈α
Intelligence␈α	Laboratory␈α
proposes␈α
to␈α
continue␈α
participation␈α	in
␈↓ ↓N␈↓¬the␈αLawrence␈αLivermore␈αLaboratory␈αprogram␈αfor␈αdevelopment␈αof␈αthe␈αS-1␈αcomputer
␈↓ ↓N␈↓¬system.  This proposal covers a one-year period beginning 1 January 1979.










␈↓ ↓N␈↓¬␈↓ ∧W␈↓∧Computer Science Department
␈↓ ↓N␈↓∧␈↓ ¬,Stanford University
␈↓ ↓N␈↓α␈↓ εS-1 Proposal␈↓ b1


␈↓ ↓N␈↓α␈↓ β(1.  Summary                                 ␈↓ π∞␈↓α␈↓ 	¬2.  Goals

␈↓ ↓N␈↓The␈α=Stanford␈α=Arti␈↓βC␈↓cial␈α=Intelligence            ␈↓ π∞␈↓The␈α
main␈α
thrust␈αof␈α
the␈α
proposed␈α
extension␈αis
␈↓ ↓N␈↓Laboratory␈α∞proposes␈α∞to␈α∂continue␈α∞development     ␈↓ π∞␈↓two␈αpart:␈αto␈αdevelop␈αsuitable␈α
language␈αdesigns
␈↓ ↓N␈↓work␈α∂on␈α∂the␈α∞S1␈α∂computer␈α∂system,␈α∂as␈α∞planned         ␈↓ π∞␈↓and␈α∩processors␈α∩to␈α∩be␈α∩used␈α∩to␈α∩write␈α∩the␈α∩S-1
␈↓ ↓N␈↓in␈α
our␈αproposal␈α
of␈αDecember␈α
1977␈α(Appendix        ␈↓ π∞␈↓operating␈α≡system,␈α≥and␈α≡to␈α≡investigate␈α≥the
␈↓ ↓N␈↓B).  This proposal covers calendar year 1979.␈↓ π∞␈↓speci␈↓βC␈↓cation of the operating system kernel.

␈↓ ↓N␈↓In␈α⊂the␈α∂period␈α⊂April␈α⊂1978␈α∂to␈α⊂the␈α⊂present,␈α∂the        ␈↓ π∞␈↓The major components of this project are:
␈↓ ↓N␈↓following has been accomplished.
                                            ␈↓ π∞␈↓1)␈α
Complete␈αthe␈α
design␈αof␈α
an␈αextended␈α
version
␈↓ ↓N␈↓␈↓ α∞1.  Preliminary design of operating         ␈↓ π∞␈↓of␈α
the␈α
Pascal␈α
language␈α
to␈α
support␈α
the␈α
systems
␈↓ ↓N␈↓␈↓ α>system.                                     ␈↓ π∞␈↓programming␈α⊂e␈↓β@␈↓ort.␈α⊂ Continue␈α⊂to␈α⊃respond␈α⊂to
                                            ␈↓ π∞␈↓new␈α→situations␈α_which␈α→occur␈α_in␈α→the␈α_actual
␈↓ ↓N␈↓␈↓ α∞2.  Support programs have been              ␈↓ π∞␈↓construction of the operating system.
␈↓ ↓N␈↓␈↓ α>developed as follows:
␈↓ ↓N␈↓␈↓ α>a.  S1 simulator,                           ␈↓ π∞␈↓2)␈α⊗Implement␈α∃the␈α⊗extended␈α⊗language␈α∃using
␈↓ ↓N␈↓␈↓ α>b.  Cross-assembler for S1 code             ␈↓ π∞␈↓exisiting compilers as a basis.
␈↓ ↓N␈↓␈↓ αnrunning on PDP-10,
␈↓ ↓N␈↓␈↓ α>c.  S1 debugger,                            ␈↓ π∞␈↓3)␈α⊂Upgrade␈α⊂the␈α⊂exisiting␈α⊂Pascal␈α⊂compilers␈α⊂to
␈↓ ↓N␈↓␈↓ α>d.  PDP-10 simulator for S1,                ␈↓ π∞␈↓be␈α_fully␈α↔compatable␈α_with␈α_standard␈α↔Pascal.
␈↓ ↓N␈↓␈↓ α>e.  AN UYK-7 simulator,                     ␈↓ π∞␈↓This␈αis␈αalso␈αrequired␈αto␈αsupport␈α
the␈αoptimizer
␈↓ ↓N␈↓␈↓ α>f.  Memory diagnostic                       ␈↓ π∞␈↓under construction by Dick Sites.

␈↓ ↓N␈↓␈↓ α∞3.  A set of numerical rountines has been   ␈↓ π∞␈↓4)␈α⊗Upgrade␈α⊗the␈α⊗P-code␈α⊗to␈α↔S-1␈α⊗Translator
␈↓ ↓N␈↓␈↓ α>written for the S1 (SQRT, SIN, COS,         ␈↓ π∞␈↓(SOPA)␈α∞to␈α∞support␈α∞full␈α∞and␈α∂extended␈α∞Pascal.
␈↓ ↓N␈↓␈↓ α>ATAN, LOG, EXP).                            ␈↓ π∞␈↓Changes␈αare␈αalso␈αnecessary␈αto␈αconform␈α
to␈αnew
                                            ␈↓ π∞␈↓schemes being used in the code generator.
␈↓ ↓N␈↓␈↓ α∞4.  Detailed design and layout of the
␈↓ ↓N␈↓␈↓ α>memory switch is well underway.  At         ␈↓ π∞␈↓5)␈α∪Implement␈α∀intermodule␈α∪type␈α∀checking,␈α∪so
␈↓ ↓N␈↓␈↓ α>this writing, all data paths and about      ␈↓ π∞␈↓that␈αPascal␈αand␈αextended␈αPascal␈αprograms␈α
can
␈↓ ↓N␈↓␈↓ α>90% of the control logic have been          ␈↓ π∞␈↓be␈α
separately␈α
compiled␈α
by␈α
modules.␈α
 This␈αwill
␈↓ ↓N␈↓␈↓ α>designed.  Diagnostic hardware              ␈↓ π∞␈↓involve␈αeither␈αupgrading␈αthe␈αcurrent␈αlinker␈αor
␈↓ ↓N␈↓␈↓ α>design is just beginning and physical       ␈↓ π∞␈↓inserting␈α≠a␈α≠prelinker␈α≠pass␈α≠to␈α≠check␈α≠type
␈↓ ↓N␈↓␈↓ α>layout is yet to be done.                   ␈↓ π∞␈↓compatability.

␈↓ ↓N␈↓␈↓ α∞5.  Assistance has been provided in other   ␈↓ π∞␈↓6)␈α
Investigate␈αthe␈α
design␈αof␈α
a␈αkernel␈α
for␈αthe␈α
S-
␈↓ ↓N␈↓␈↓ α>hardware design, mainly the memory          ␈↓ π∞␈↓1␈αoperating␈αsystem.␈αThis␈αe␈↓β@␈↓ort␈αwill␈α
concentrate
␈↓ ↓N␈↓␈↓ α>interface for the Mark I processor.         ␈↓ π∞␈↓on␈α∃specifying␈α∃a␈α∃minimal␈α∃kernel␈α∃to␈α∃support
                                            ␈↓ π∞␈↓operating system functions.
␈↓ ↓N␈↓Professor␈α
Forest␈α
Baskett␈α
has␈α
joined␈α
the␈α
project
␈↓ ↓N␈↓as␈α*Co-principal␈α*Investigator␈α*and␈α)will
␈↓ ↓N␈↓coordinate␈α,system␈α-programming␈α,e␈↓β@␈↓orts.
␈↓ ↓N␈↓Professor␈α⊃John␈α⊃Hennessy␈α⊃has␈α⊃also␈α⊃joined␈α⊂in
␈↓ ↓N␈↓this␈αe␈↓β@␈↓ort.␈α
 See␈αAppendix␈αA␈α
for␈αmore␈αon␈α
their
␈↓ ↓N␈↓interests.
␈↓ ↓N␈↓α␈↓ εS-1 Proposal␈↓ `2


␈↓ ↓N␈↓α␈↓ β 3.  Work Plan                               ␈↓ π∞␈↓α␈↓ πC3.2  Operating System Kernel Design

␈↓ ↓N␈↓α␈↓ ↓a3.1  Programming Language Development       ␈↓ π∞␈↓It␈α
is␈α
proposed␈α
to␈αinvestigate␈α
the␈α
design␈α
of␈αthe
                                            ␈↓ π∞␈↓kernel␈α⊃for␈α⊃the␈α⊃S-1␈α⊃multiprocessing␈α⊂operating
␈↓ ↓N␈↓The␈α∞programming␈α∂language␈α∞design␈α∂work␈α∞will        ␈↓ π∞␈↓system.␈α
Since␈α
the␈α
kernel␈α
frequently␈αdetermines
␈↓ ↓N␈↓go␈α∩on␈α∩largely␈α∪in␈α∩parallel.␈α∩ The␈α∩␈↓βC␈↓rst␈α∪step␈α∩of        ␈↓ π∞␈↓the␈α⊗quality␈α⊗of␈α∃the␈α⊗entire␈α⊗operating␈α∃system,
␈↓ ↓N␈↓specifying␈α~the␈α≠Extended␈α~Pascal␈α≠has␈α~been          ␈↓ π∞␈↓especially␈α
with␈α
respect␈α
to␈α
performance,␈α
security,
␈↓ ↓N␈↓partially␈α∩completed␈α⊃(the␈α∩speci␈↓βC␈↓cation␈α⊃appears   ␈↓ π∞␈↓and␈α7reliability,␈α7it␈α7deserves␈α7special
␈↓ ↓N␈↓in␈α⊗the␈α↔Appendix).␈α⊗ Implementation␈α↔of␈α⊗this        ␈↓ π∞␈↓consideration␈α_in␈α_the␈α_design␈α→process.␈α_ This
␈↓ ↓N␈↓design␈α∪is␈α∪expected␈α∪to␈α∪start␈α∪very␈α∪shortly.␈α∩ A       ␈↓ π∞␈↓portion␈α∃of␈α∃the␈α⊗proposed␈α∃work␈α∃will␈α⊗aim␈α∃at
␈↓ ↓N␈↓preliminary␈α,version␈α,of␈α,the␈α+Extended             ␈↓ π∞␈↓specifying␈α∃a␈α∃kernel␈α∀which␈α∃will␈α∃support␈α∀the
␈↓ ↓N␈↓Language␈α⊃will␈α⊂be␈α⊃available␈α⊂by␈α⊃July␈α⊃1,␈α⊂1979,        ␈↓ π∞␈↓variety␈α≥of␈α≥operating␈α≥system␈α≥requirements,
␈↓ ↓N␈↓and␈α∂the␈α∂␈↓βC␈↓nal␈α∂version␈α∞of␈α∂the␈α∂compiler␈α∂will␈α∞be        ␈↓ π∞␈↓which␈α∪arise␈α∪in␈α∪the␈α∪S-1␈α∀environment.␈α∪Issues
␈↓ ↓N␈↓delivered␈α
by␈α
September␈α
30,␈α
1979.␈αThe␈α
upgrade      ␈↓ π∞␈↓such␈α⊂at␈α⊃what␈α⊂the␈α⊃kernel␈α⊂should␈α⊃contain␈α⊂and
␈↓ ↓N␈↓of␈α⊗the␈α⊗language␈α⊗processors␈α⊗for␈α↔Pascal␈α⊗will        ␈↓ π∞␈↓insuring␈α⊃reliability␈α⊃in␈α⊂the␈α⊃kernel␈α⊃will␈α⊃be␈α⊂the
␈↓ ↓N␈↓occur␈α~in␈α~parallel␈α~with␈α~the␈α~new␈α→language           ␈↓ π∞␈↓main␈α≤focus␈α≤of␈α≤the␈α≤work.␈α≤A␈α≠preliminary
␈↓ ↓N␈↓implementation.␈α↔A␈α↔complete␈α↔implementation      ␈↓ π∞␈↓speci␈↓βC␈↓cation␈α∪of␈α∪the␈α∪kernel␈α∪functions␈α∀will␈α∪be
␈↓ ↓N␈↓for␈α
Pascal␈α∞will␈α
be␈α∞available␈α
by␈α∞September␈α
30,      ␈↓ π∞␈↓delivered␈α⊃on␈α⊃July␈α⊂1,␈α⊃1979.␈α⊃ After␈α⊂interaction
␈↓ ↓N␈↓1979.␈α" Partially␈α"complete␈α!implementations      ␈↓ π∞␈↓with␈α⊃the␈α⊂LLL␈α⊃operating␈α⊂systems␈α⊃group,␈α⊂␈↓βC␈↓nal
␈↓ ↓N␈↓which␈αomit␈αsegments␈αsuch␈αas␈α␈↓βC␈↓les␈α
and␈αpassing       ␈↓ π∞␈↓speci␈↓βC␈↓cation␈α∂and␈α∂a␈α∂design␈α∂for␈α∂the␈α∂kernel␈α∂will
␈↓ ↓N␈↓of␈α∞procedures␈α∞as␈α∞parameters␈α∞will␈α∞be␈α
available     ␈↓ π∞␈↓be␈α⊃worked␈α⊃on.␈α⊃The␈α⊃␈↓βC␈↓nal␈α⊃speci␈↓βC␈↓cation␈α⊃and␈α⊃a
␈↓ ↓N␈↓earlier␈α∩(early␈α⊃Summer).␈α∩ The␈α∩modi␈↓βC␈↓cation␈α⊃to      ␈↓ π∞␈↓design␈α∪for␈α∪the␈α∪kernel␈α∪will␈α∪be␈α∀completed␈α∪by
␈↓ ↓N␈↓Pascal␈α∃and␈α∃the␈α⊗upgrade␈α∃to␈α∃provide␈α⊗a␈α∃full           ␈↓ π∞␈↓September 30, 1979.
␈↓ ↓N␈↓compiler␈α∩will␈α∪require␈α∩additional␈α∪support␈α∩for
␈↓ ↓N␈↓the␈α)P-code␈α)to␈α)S-1␈α)translator.␈α( Also,
␈↓ ↓N␈↓implementation␈α≠of␈α≤the␈α≠P-code␈α≤to␈α≠P-code
␈↓ ↓N␈↓optimizer␈α∨by␈α≡Richard␈α∨Sites␈α∨will␈α≡require
␈↓ ↓N␈↓changes␈α∂to␈α∂the␈α∂compilers␈α∂in␈α∂order␈α∂to␈α∂support
␈↓ ↓N␈↓the␈α∞optimizer.␈α∞These␈α∞changes␈α∞will␈α∞be␈α∞done␈α∞as
␈↓ ↓N␈↓they␈α6appear␈α6during␈α7the␈α6optimizer
␈↓ ↓N␈↓development.

␈↓ ↓N␈↓Lastly,␈α⊃in␈α⊃order␈α⊃to␈α⊃e␈↓β@␈↓ectively␈α⊃compile␈α⊂multi-
␈↓ ↓N␈↓module␈α⊃programs,␈α⊃intermodule␈α⊃type␈α⊃checking
␈↓ ↓N␈↓must␈α⊃be␈α⊂supported.␈α⊃At␈α⊂the␈α⊃present␈α⊃time␈α⊂this
␈↓ ↓N␈↓problem␈α∩has␈α∩received␈α∩only␈α∪cursory␈α∩addition.
␈↓ ↓N␈↓The␈α⊗␈↓βC␈↓rst␈α⊗step␈α⊗is␈α⊗to␈α⊗specify␈α⊗a␈α↔method␈α⊗for
␈↓ ↓N␈↓accomplishing␈α∀the␈α∪type␈α∀checking.␈α∀ This␈α∪will
␈↓ ↓N␈↓resuult␈α"in␈α"a␈α"proposed␈α"design␈α"for␈α!the
␈↓ ↓N␈↓intermodule␈αtype␈αchecker␈αby␈αJuly␈α1,␈α1979.␈αThe
␈↓ ↓N␈↓implementation␈α⊂will␈α⊃then␈α⊂proceed,␈α⊃and␈α⊂reach
␈↓ ↓N␈↓completion on September 30, 1979.
␈↓ ↓N␈↓α␈↓ εS-1 Proposal␈↓ `3


␈↓ ↓N␈↓α␈↓ β+Appendix A                                  ␈↓ π∞␈↓the␈α&construction␈α&of␈α&reliable␈α&distributed
␈↓ ↓N␈↓α␈↓ β≠New Personnel                               ␈↓ π∞␈↓software␈αsystems.␈α
 This␈αis␈α
important␈αto␈αthe␈α
S-1
                                            ␈↓ π∞␈↓project,␈α∪since␈α∪it␈α∪is␈α∪reasonable␈α∪to␈α∪consider␈α∩a
                                            ␈↓ π∞␈↓message␈α⊃passing␈α⊃system␈α⊃within␈α⊃the␈α⊂operating
␈↓ ↓N␈↓α␈↓ β∨Forest Baskett                              ␈↓ π∞␈↓system, as well as available to the users.

␈↓ ↓N␈↓Forest␈αBaskett␈αhas␈αbeen␈αinvolved␈αin␈αoperating
␈↓ ↓N␈↓system␈α∃design␈α∃and␈α∃development␈α∃since␈α∀1962.
␈↓ ↓N␈↓He␈α_worked␈α_with␈α_the␈α_Rice␈α→Computer␈α_and
␈↓ ↓N␈↓developed␈α≥parts␈α≤of␈α≥the␈α≥Codeword␈α≤based
␈↓ ↓N␈↓operating␈α⊗system␈α⊗for␈α∃that␈α⊗computer␈α⊗in␈α∃the
␈↓ ↓N␈↓early '60s.

␈↓ ↓N␈↓He␈α∩was␈α∪one␈α∩of␈α∪the␈α∩principal␈α∪designers␈α∩and
␈↓ ↓N␈↓implementers␈α⊂of␈α⊂one␈α⊂of␈α⊂the␈α⊂earliest␈α⊂and␈α⊂best
␈↓ ↓N␈↓time-sharing␈α
systems␈α∞on␈α
CDC␈α
6600's,␈α∞the␈α
UT
␈↓ ↓N␈↓operating␈α⊂system␈α⊂at␈α∂the␈α⊂University␈α⊂of␈α∂Texas.
␈↓ ↓N␈↓He␈α∞was␈α∞the␈α∞principal␈α∞designer␈α∞of␈α∞DEMOS,␈α∞a
␈↓ ↓N␈↓modern␈α!kernel␈α!based,␈α!process␈α!structured
␈↓ ↓N␈↓operating␈α∩system␈α∩for␈α∩the␈α∩CRAY-1.␈α∪ He␈α∩has
␈↓ ↓N␈↓published␈α~numerous␈α~papers␈α~on␈α→computing
␈↓ ↓N␈↓system design and development.

␈↓ ↓N␈↓α␈↓ β→John Hennessy 

␈↓ ↓N␈↓Professor␈α∪John␈α∪Hennessy's␈α∪research␈α∩interests
␈↓ ↓N␈↓include␈α_programming␈α↔language␈α_design␈α↔and
␈↓ ↓N␈↓implementation,␈α
operating␈α
systems␈α
design,␈αand
␈↓ ↓N␈↓distributed␈α*systems.␈α* In␈α*the␈α*area␈α*of
␈↓ ↓N␈↓programming␈α(language␈α(design␈α)he␈α(has
␈↓ ↓N␈↓designed␈α⊃a␈α⊃real-time␈α⊃programming␈α⊃language,
␈↓ ↓N␈↓providing␈α_support␈α↔for␈α_stand-alone␈α↔systems.
␈↓ ↓N␈↓Recently,␈α⊂under␈α⊂S-1␈α∂funding,␈α⊂he␈α⊂has␈α∂worked
␈↓ ↓N␈↓on␈α≡the␈α≡design␈α≡of␈α≡an␈α≡extension␈α≡of␈α≥the
␈↓ ↓N␈↓programming␈α≠language␈α≠Pascal,␈α≤to␈α≠support
␈↓ ↓N␈↓systems␈αprogramming␈αon␈α
the␈αS-1.␈α He␈αhas␈α
also
␈↓ ↓N␈↓been␈α
involved␈α
in␈α
the␈α
design␈α
and␈αmaintenance
␈↓ ↓N␈↓of␈α↔two␈α↔Pascal␈α↔compilers.␈α↔ Currently,␈α↔he␈α↔is
␈↓ ↓N␈↓initiating␈α⊃work␈α∩on␈α⊃the␈α⊃problems␈α∩of␈α⊃software
␈↓ ↓N␈↓portability␈αand␈αinteractive␈αhigh␈αlevel␈αlanguage
␈↓ ↓N␈↓debuggers.

␈↓ ↓N␈↓Professor␈α
Hennessy␈αis␈α
also␈αconducting␈α
research
␈↓ ↓N␈↓on␈α∞the␈α
topic␈α∞of␈α
distributed␈α∞computing␈α∞and␈α
its
␈↓ ↓N␈↓incorporation␈α∩into␈α∩a␈α∪programming␈α∩language.
␈↓ ↓N␈↓This␈αresearch␈αis␈αbased␈αon␈αthe␈αincorporation␈α
of
␈↓ ↓N␈↓message␈α5passing␈α5and␈α5synchronization
␈↓ ↓N␈↓capabilities␈α∂into␈α⊂a␈α∂standard␈α⊂process␈α∂structure.
␈↓ ↓N␈↓The␈αgoal␈αis␈αto␈αprovide␈αsimple␈αtools␈αto␈αsupport
␈↓ ↓N␈↓α␈↓ ε↑␈↓ ]4


␈↓ ↓N␈↓α␈↓ β,Appendix B                                  ␈↓ π∞␈↓peripherals␈αwill␈α
connect␈αto␈αvarious␈α
S-1␈αsystem
␈↓ ↓N␈↓α␈↓ α$Text of December 1977 Proposal              ␈↓ π∞␈↓con␈↓βC␈↓gurations.

                                            ␈↓ π∞␈↓3)␈α
Support␈α
S-1␈α
Project␈α
hardware␈α
development,
                                            ␈↓ π∞␈↓in␈α∃fashions␈α∃and␈α∀to␈α∃extents␈α∃mutualy␈α∀agreed
                                            ␈↓ π∞␈↓upon␈α→by␈α→cognizant␈α→SAIL␈α→and␈α→LLL␈α_sta␈↓β@␈↓.
␈↓ ↓N␈↓α␈↓ βF1.  Goals                                   ␈↓ π∞␈↓During␈αthe␈αperiod␈α
of␈αthis␈αinitial␈αproposal␈α
such
                                            ␈↓ π∞␈↓support␈αactivity␈αwill␈αinclude␈αdetailed␈αdesign␈αof
␈↓ ↓N␈↓Building␈α~on␈α~a␈α~substantial␈α~background␈α~in          ␈↓ π∞␈↓the␈α#crossbar␈α$switch␈α#for␈α#the␈α$␈↓βC␈↓rst␈α#S-1
␈↓ ↓N␈↓computer␈αtimesharing␈αsystem␈αdevelopment␈α(see    ␈↓ π∞␈↓multiprocessor␈α→con␈↓βC␈↓guration␈α→and␈α→the␈α→post-
␈↓ ↓N␈↓Appendix␈α,C),␈α+the␈α,Stanford␈α+Arti␈↓βC␈↓cial             ␈↓ π∞␈↓construction␈α∞debugging␈α
and␈α∞documentation␈α
of
␈↓ ↓N␈↓Intelligence␈α_Laboratory␈α↔(SAIL)␈α_proposes␈α↔to      ␈↓ π∞␈↓this hardware module.
␈↓ ↓N␈↓participate␈α%in␈α%the␈α%Lawrence␈α$Livermore
␈↓ ↓N␈↓Laboratory␈α∪(LLL)␈α∪program␈α∪for␈α∩development
␈↓ ↓N␈↓of␈α_the␈α↔S-1␈α_computer␈α↔system␈α_by␈α↔designing
␈↓ ↓N␈↓certain␈α∩elements␈α∩and␈α∩developing␈α∪an␈α∩e␈↓β@␈↓icient      ␈↓ π∞␈↓α␈↓ λ`2.  Work Plan
␈↓ ↓N␈↓operating␈αsystem␈α
over␈αa␈α
period␈αof␈α
three␈αyears.
␈↓ ↓N␈↓This proposal covers the ␈↓βC␈↓rst 9 months' work.␈↓ π∞␈↓α␈↓ πM2.1  Operating System Development

␈↓ ↓N␈↓The␈α∩proposed␈α⊃work␈α∩will␈α⊃have␈α∩the␈α⊃following         ␈↓ π∞␈↓The␈α∀operating␈α∀system␈α∀to␈α∀be␈α∀developed␈α∀will
␈↓ ↓N␈↓subgoals:                                   ␈↓ π∞␈↓exploit␈α≡the␈α≡full␈α≡suite␈α≡of␈α∨capabilities␈α≡of
                                            ␈↓ π∞␈↓multiprocessor␈αS-1␈α
con␈↓βC␈↓gurations␈αand␈α
will␈αuse
␈↓ ↓N␈↓1)␈α~Design␈α~and␈α~begin␈α~development␈α~of␈α→an             ␈↓ π∞␈↓the␈α↔better␈α↔features␈α↔of␈α_existing␈α↔timesharing
␈↓ ↓N␈↓operating␈α'sysem␈α'for␈α'both␈α'single␈α&and              ␈↓ π∞␈↓systems,␈α↔such␈α↔as␈α↔Unix,␈α↔Multics,␈α↔TOPS-20,
␈↓ ↓N␈↓multiprocessor␈α~S-1␈α≠computer␈α~con␈↓βC␈↓gurations      ␈↓ π∞␈↓ITS,␈α∂and␈α∞the␈α∂Stanford␈α∞Monitor.␈α∂ However,␈α∞it
␈↓ ↓N␈↓with␈α
dedicated␈α
disk␈α
systems.␈α
 This␈α
system␈α
will    ␈↓ π∞␈↓will␈α⊂also␈α∂be␈α⊂capable␈α∂of␈α⊂specialization␈α⊂for␈α∂use
␈↓ ↓N␈↓provide␈α$e␈↓β@␈↓icient␈α#resource␈α$allocation␈α#for        ␈↓ π∞␈↓with␈α single␈α processor␈α!S-1␈α con␈↓βC␈↓gurations.
␈↓ ↓N␈↓con␈↓βC␈↓gurations␈α⊂of␈α⊂1␈α∂to␈α⊂32␈α⊂processors␈α⊂and␈α∂will       ␈↓ π∞␈↓There␈α≥will␈α≥also␈α≥be␈α≥some␈α≡innovation␈α≥in
␈↓ ↓N␈↓include␈α~user␈α~interactive␈α~facilities␈α~that␈α~are     ␈↓ π∞␈↓interactive user services.
␈↓ ↓N␈↓optimized␈α"for␈α"display␈α#terminals,␈α"though
␈↓ ↓N␈↓teleprinter␈α
terminals␈α
will␈α
also␈α
be␈αsupported.␈α
 In ␈↓ π∞␈↓A␈α~key␈α~problem␈α→to␈α~be␈α~solved␈α~is␈α→e␈↓β@␈↓icient
␈↓ ↓N␈↓addition␈αto␈αthe␈αoperating␈αsystem,␈αa␈α
number␈αof      ␈↓ π∞␈↓allocation␈α_and␈α_scheduling␈α_of␈α→resources.␈α_ It
␈↓ ↓N␈↓utility␈α⊂programs␈α⊂will␈α⊂be␈α⊂developed,␈α∂including    ␈↓ π∞␈↓should␈α$be␈α$possible␈α$to␈α$␈↓βD␈↓exibly␈α#allocate
␈↓ ↓N␈↓text␈α$editors,␈α$␈↓βC␈↓le␈α$management␈α#programs,          ␈↓ π∞␈↓processors␈α≡either␈α≡to␈α≥a␈α≡number␈α≡of␈α≥tasks
␈↓ ↓N␈↓compilers, and debuggers.                   ␈↓ π∞␈↓supporting␈α∩independent␈α∩users␈α∩or␈α∩to␈α∩separate
                                            ␈↓ π∞␈↓forks of a single task, depending on priorities.
␈↓ ↓N␈↓SAIL␈αrecognizes␈αthat␈αthe␈αS-1␈α
Project␈αrequires
␈↓ ↓N␈↓an␈α∂evolving␈α∞operating␈α∂system␈α∞for␈α∂the␈α∞various      ␈↓ π∞␈↓The␈α⊃planning␈α⊃phase␈α⊃of␈α⊃this␈α⊃work␈α∩(of␈α⊃about
␈↓ ↓N␈↓computer␈αcon␈↓βC␈↓gurations␈αit␈αis␈αcreating,␈αand␈αwill   ␈↓ π∞␈↓three␈αmonths'␈αduration)␈αwill␈αbe␈αdevoted␈αto␈αthe
␈↓ ↓N␈↓undertake␈α⊂to␈α⊂create␈α∂an␈α⊂operating␈α⊂system␈α∂that      ␈↓ π∞␈↓following tasks:
␈↓ ↓N␈↓will␈αhave␈αsome␈αminimal␈αcapability␈αearly␈αin␈αthe     ␈↓ π∞␈↓␈↓ π≡(1) familiarization with the S-1 equipment
␈↓ ↓N␈↓e␈↓β@␈↓ort,␈α~growing␈α~thereafter␈α~in␈α~capability␈α→in       ␈↓ π∞␈↓␈↓ πNcharacteristics;
␈↓ ↓N␈↓frequent increments.                        ␈↓ π∞␈↓␈↓ π≡(2) characterization of the principal kinds of
                                            ␈↓ π∞␈↓␈↓ πNcomputing tasks that are to be performed
␈↓ ↓N␈↓2)␈α Based␈αon␈αwork␈αdone␈αin␈αpursuit␈αof␈αthe␈α␈↓βC␈↓rst        ␈↓ π∞␈↓␈↓ πNwith this system;
␈↓ ↓N␈↓subgoal,␈α,recommend␈α,speci␈↓βC␈↓c␈α,equipment           ␈↓ π∞␈↓␈↓ π≡(3) general design of program services to be
␈↓ ↓N␈↓characteristics␈α≥needed␈α≥to␈α≡support␈α≥e␈↓β@␈↓icient      ␈↓ π∞␈↓␈↓ πNprovided by the operating system,
␈↓ ↓N␈↓operation.␈α≥ This␈α≥particularly␈α≡includes␈α≥the      ␈↓ π∞␈↓␈↓ πNincluding primary memory allocation and
␈↓ ↓N␈↓manner␈α⊗in␈α⊗which␈α⊗secondary␈α⊗memories␈α⊗and           ␈↓ π∞␈↓␈↓ πN␈↓βC␈↓le system characteristics;
␈↓ ↓N␈↓αWork Plan␈↓ ∧m2.1  Operating System Development␈↓ ←5


␈↓ ↓N␈↓␈↓ ↓↑(4) general design of user services, including␈↓ π∞␈↓SAIL␈α≤proposes␈α≠to␈α≤perform␈α≤the␈α≠following
␈↓ ↓N␈↓␈↓ α∞display control, command languages, and     ␈↓ π∞␈↓subtasks␈α
of␈α∞this␈α
basic␈α∞task␈α
during␈α∞the␈α
current
␈↓ ↓N␈↓␈↓ α∞character set standards;                    ␈↓ π∞␈↓proposal period:
␈↓ ↓N␈↓␈↓ ↓↑(5) analysis of other resource allocation issues;␈↓ π∞␈↓␈↓ π≡1) Familiarization of SAIL design personnel
␈↓ ↓N␈↓␈↓ ↓↑(6) study of major existing operating systems␈↓ π∞␈↓␈↓ πNwith the S-1 Design System.
␈↓ ↓N␈↓␈↓ α∞to determine which of their features may    ␈↓ π∞␈↓␈↓ π≡2) Complete logical design of the switch
␈↓ ↓N␈↓␈↓ α∞be pro␈↓βC␈↓tably included in the one to be      ␈↓ π∞␈↓␈↓ πNusing the S-1 Design System Graphics
␈↓ ↓N␈↓␈↓ α∞created, and which, if any, of their major  ␈↓ π∞␈↓␈↓ πNLanguage.
␈↓ ↓N␈↓␈↓ α∞modules may be appropriately carried        ␈↓ π∞␈↓␈↓ π≡3) Complete physical design of the switch,
␈↓ ↓N␈↓␈↓ α∞over into the new operating system;         ␈↓ π∞␈↓␈↓ πNincluding layout and cable assignment.
␈↓ ↓N␈↓␈↓ ↓↑(7) formulation of criteria for selection of␈↓ π∞␈↓␈↓ π≡4) Production of ␈↓βC␈↓nal wire-lists through the
␈↓ ↓N␈↓␈↓ α∞programming languages to be used in         ␈↓ π∞␈↓␈↓ πNS-1 Design System.
␈↓ ↓N␈↓␈↓ α∞major development tasks.                    ␈↓ π∞␈↓␈↓ π≡5) Debugging, including demonstration of
␈↓ ↓N␈↓This␈α⊃phase␈α⊂of␈α⊃the␈α⊂work␈α⊃will␈α⊃culminate␈α⊂with         ␈↓ π∞␈↓␈↓ πNfull switch functionality, using the LLL-
␈↓ ↓N␈↓the␈α∩generation␈α∩of␈α∩a␈α∩report␈α∪documenting␈α∩the        ␈↓ π∞␈↓␈↓ πNsupplied LSI-11 diagnostic system.
␈↓ ↓N␈↓results of performing these 7 tasks.        ␈↓ π∞␈↓␈↓ π≡6) Documentation, including a structured text
                                            ␈↓ π∞␈↓␈↓ πNdescription of the hardware to augment
␈↓ ↓N␈↓Other␈α∂products␈α∞of␈α∂this␈α∞phase␈α∂will␈α∂include␈α∞an       ␈↓ π∞␈↓␈↓ πNthe structured drawings, and a high-level
␈↓ ↓N␈↓assortment␈αof␈αplanning␈αdocuments␈αand␈αspeci␈↓βC␈↓c     ␈↓ π∞␈↓␈↓ πNdescription of switch operation.
␈↓ ↓N␈↓recommendations␈α∞on␈α∞equipment␈α∂design␈α∞issues,
␈↓ ↓N␈↓such␈α∞as␈α
how␈α∞the␈α
disk␈α∞storage␈α
units␈α∞should␈α
be        ␈↓ π∞␈↓All␈α≥aspects␈α≥of␈α≥crossbar␈α≡switch␈α≥hardware
␈↓ ↓N␈↓interfaced to the multiprocessor system.    ␈↓ π∞␈↓implementation␈α$is␈α#proposed␈α$to␈α$be␈α#the
                                            ␈↓ π∞␈↓responsibility␈α⊂of␈α⊂LLL.␈α⊂ At␈α⊂the␈α⊃completion␈α⊂of
␈↓ ↓N␈↓The␈α∪subsequent␈α∩design␈α∪phase␈α∩(of␈α∪about␈α∩six         ␈↓ π∞␈↓Step␈α⊂4␈α∂(above),␈α⊂it␈α∂is␈α⊂proposed␈α∂that␈α⊂LLL␈α∂will
␈↓ ↓N␈↓months'␈α
duration)␈α
will␈α
focus␈α
on␈αdetailed␈α
design   ␈↓ π∞␈↓construct␈α∞the␈α
switch,␈α∞associated␈α∞cabinetry,␈α
and
␈↓ ↓N␈↓of␈α→the␈α→functional␈α→elements␈α→of␈α→the␈α→system,         ␈↓ π∞␈↓LSI-11␈α⊃debug␈α∩processor,␈α⊃and␈α∩will␈α⊃thereupon
␈↓ ↓N␈↓selection␈α⊗of␈α∃system␈α⊗programming␈α∃languages,      ␈↓ π∞␈↓make␈α⊃the␈α⊂switch␈α⊃available␈α⊂for␈α⊃debugging␈α⊂by
␈↓ ↓N␈↓programming␈α≠of␈α≠developmental␈α≠tools␈α≠(e.g.,       ␈↓ π∞␈↓SAIL␈αsta␈↓β@␈↓.␈α Throughout␈αthe␈αdesign,␈αcognizant
␈↓ ↓N␈↓simple␈α∪editors␈α∪and␈α∪debuggers),␈α∪and␈α∪possibly      ␈↓ π∞␈↓SAIL␈α
sta␈↓β@␈↓␈α
members␈α
will␈α
maintain␈α
close␈α
contact
␈↓ ↓N␈↓the␈αmodi␈↓βC␈↓cation␈α
of␈αa␈α
compiler␈αto␈α
produce␈αS-1       ␈↓ π∞␈↓with cognizant LLL sta␈↓β@␈↓ members.
␈↓ ↓N␈↓code.

␈↓ ↓N␈↓α␈↓ αB2.2  Crossbar Switch Design
                                            ␈↓ π∞␈↓α␈↓ λl3.  Facilities
␈↓ ↓N␈↓It␈α∂is␈α∂proposed␈α∂to␈α∂design␈α∂a␈α∂crossbar␈α⊂switch␈α∂to
␈↓ ↓N␈↓connect␈α∀16␈α∀S-1␈α∀processors␈α∀with␈α∀16␈α∪memory          ␈↓ π∞␈↓Much␈α≡of␈α∨the␈α≡planning␈α∨and␈α≡preliminary
␈↓ ↓N␈↓modules␈α∞with␈α∂a␈α∞maximum␈α∞concurrency␈α∂of␈α∞16,         ␈↓ π∞␈↓programming␈α⊃work␈α⊃on␈α⊃both␈α⊃projects␈α⊃will␈α⊃be
␈↓ ↓N␈↓and␈α↔a␈α↔throughput␈α↔of␈α↔70␈α_nanoseconds␈α↔per            ␈↓ π∞␈↓performed␈α∂on␈α⊂the␈α∂existing␈α⊂computer␈α∂facilities
␈↓ ↓N␈↓word,␈αas␈α
speci␈↓βC␈↓ed␈αin␈α
Reference␈α1.␈α
 The␈αswitch      ␈↓ π∞␈↓of␈α+the␈α+Stanford␈α+Arti␈↓βC␈↓cial␈α*Intelligence
␈↓ ↓N␈↓will␈α
contain␈α
logic␈α
to␈α
allow␈α
an␈α
LSI-11␈α
processor,   ␈↓ π∞␈↓Laboratory.␈α Since␈αthis␈αequipment␈αhas␈αalready
␈↓ ↓N␈↓connected␈α⊃through␈α⊃an␈α⊃LLL-supplied␈α⊃parallel      ␈↓ π∞␈↓been␈α,purchased,␈α,mostly␈α,with␈α,U.␈α+S.
␈↓ ↓N␈↓interface,␈α
to␈αperform␈α
comprehensive␈α
testing␈αof   ␈↓ π∞␈↓Government␈α⊗research␈α⊗funds,␈α⊗the␈α⊗only␈α⊗costs
␈↓ ↓N␈↓the␈αswitch␈α(both␈αby␈αproviding␈αarti␈↓βC␈↓cial␈αstimuli   ␈↓ π∞␈↓involved␈αin␈αits␈αuse␈αwill␈αbe␈αthe␈αsupport␈αof␈αpart
␈↓ ↓N␈↓to␈α∀the␈α∪switch,␈α∀and␈α∀by␈α∪reading␈α∀the␈α∀state␈α∪of          ␈↓ π∞␈↓of␈αa␈αcomputer␈αtechnician␈αand␈αa␈αshare␈αof␈αother
␈↓ ↓N␈↓switch␈αbuses␈αand␈α
signals)␈αand␈αto␈α
recover␈αfrom      ␈↓ π∞␈↓maintenance costs.
␈↓ ↓N␈↓what␈α(are␈α(considered␈α(to␈α)be␈α(probable
␈↓ ↓N␈↓recoverable␈α≥failure␈α≥modes␈α≥of␈α≥the␈α≤switch,         ␈↓ π∞␈↓It␈αis␈αproposed␈αthat␈αLLL␈αmake␈αavailable␈αto␈αthe
␈↓ ↓N␈↓processors, and memory modules.             ␈↓ π∞␈↓Stanford␈α∨Arti␈↓βC␈↓cial␈α∨Intelligence␈α∨Laboratory
                                            ␈↓ π∞␈↓fractions␈α⊗of␈α∃the␈α⊗capabilities␈α∃of␈α⊗both␈α∃single
␈↓ ↓N␈↓αFacilities␈↓ ε↑␈↓ `6


␈↓ ↓N␈↓processor␈α?␈απand␈α?␈απmultiprocessor␈α?␈απS-1               ␈↓ π∞␈↓and␈α
will␈α
include␈α∞the␈α
description␈α
of␈α∞the␈α
switch
␈↓ ↓N␈↓con␈↓βC␈↓gurations␈α∩appropriate␈α∩to␈α∪various␈α∩phases     ␈↓ π∞␈↓design␈αimplementation␈α
and␈αdebugging␈αwork␈α
of
␈↓ ↓N␈↓of␈α∀advanced␈α∀operating␈α∃systems␈α∀development       ␈↓ π∞␈↓Section␈α2.2.␈α All␈αthese␈αreports␈αwill␈αbe␈α
delivered
␈↓ ↓N␈↓and␈α
debugging.␈α
 Determination␈αof␈α
how␈α
this␈αis      ␈↓ π∞␈↓to␈α∪LLL␈α∀within␈α∪30␈α∀days␈α∪of␈α∀the␈α∪end␈α∀of␈α∪the
␈↓ ↓N␈↓to␈α∩be␈α∩most␈α⊃e␈↓β@␈↓ectively␈α∩accomplished␈α∩is␈α∩to␈α⊃be        ␈↓ π∞␈↓periods on whose results they report.
␈↓ ↓N␈↓made␈α∀jointly␈α∃by␈α∀cognizant␈α∀LLL␈α∃and␈α∀SAIL
␈↓ ↓N␈↓personnel,␈α∨as␈α∨such␈α∨needs␈α∨evolve.␈α∨ It␈α≡is
␈↓ ↓N␈↓anticipated␈α∃that␈α∃some␈α∃phone␈α∃line␈α⊗access␈α∃to
␈↓ ↓N␈↓LLL-based␈α⊃S-1␈α⊃hardware␈α⊃con␈↓βC␈↓gurations␈α⊂will
␈↓ ↓N␈↓be␈α
needed␈αand␈α
a␈α
budget␈αitem␈α
to␈α
support␈αsuch
␈↓ ↓N␈↓access is included.



␈↓ ↓N␈↓α␈↓ α)4.  Coordination and Reporting

␈↓ ↓N␈↓It␈α≠is␈α≠proposed␈α≠that␈α≠primary␈α≠coordination
␈↓ ↓N␈↓between␈α≡cognizant␈α≡LLL␈α≡and␈α≡SAIL␈α≥sta␈↓β@␈↓
␈↓ ↓N␈↓members␈α'be␈α'accompished␈α'via␈α&monthly
␈↓ ↓N␈↓meetings,␈α⊃to␈α⊃be␈α⊃conducted␈α⊃for␈α⊃approximately
␈↓ ↓N␈↓half-day␈α#periods.␈α# Senior␈α#SAIL␈α"Project
␈↓ ↓N␈↓members␈α~will␈α~document␈α~the␈α~salient␈α→topics
␈↓ ↓N␈↓addressed␈α≡at␈α≥these␈α≡conferences␈α≥(including
␈↓ ↓N␈↓accomplishments␈α⊂of␈α∂the␈α⊂previous␈α⊂month,␈α∂and
␈↓ ↓N␈↓the␈α→relatively␈α→detailed␈α→work␈α→plan␈α→for␈α→the
␈↓ ↓N␈↓upcoming␈α(month)␈α(and␈α(distribute␈α(such
␈↓ ↓N␈↓documents␈α∪to␈α∪all␈α∪cognizant␈α∪SAIL␈α∀and␈α∪LLL
␈↓ ↓N␈↓sta␈↓β@␈↓␈α%members␈α$as␈α%the␈α%primary␈α$project
␈↓ ↓N␈↓coordination papers.

␈↓ ↓N␈↓SAIL␈αproposes␈α
to␈αsubmit␈α
two␈αinterim␈α
technical
␈↓ ↓N␈↓reports␈α↔to␈α↔LLL␈α↔dealing␈α↔with␈α↔the␈α↔progress
␈↓ ↓N␈↓made␈αduring␈αthe␈αWinter␈αand␈αSpring␈αQuarters
␈↓ ↓N␈↓of␈α∀1978,␈α∃and␈α∀a␈α∀␈↓βC␈↓nal,␈α∃comprehensive␈α∀report
␈↓ ↓N␈↓which␈α∞treats␈α∂in␈α∞detail␈α∞all␈α∂aspects␈α∞of␈α∂the␈α∞work
␈↓ ↓N␈↓done␈α↔during␈α↔the␈α_January-September,␈α↔1978,
␈↓ ↓N␈↓period.␈α_ It␈α_is␈α_anticipated␈α_that␈α→the␈α_Winter
␈↓ ↓N␈↓Quarter␈α
document␈α
will␈α
report␈α
the␈α
results␈α
of␈α
the
␈↓ ↓N␈↓7-point␈α operating␈α sysem␈α planning␈α phase
␈↓ ↓N␈↓discussed␈α∩in␈α⊃Section␈α∩2.1,␈α∩as␈α⊃well␈α∩as␈α∩the␈α⊃␈↓βC␈↓rst
␈↓ ↓N␈↓three␈αitems␈α
of␈αthe␈α
crossbar␈αswitch␈α
development
␈↓ ↓N␈↓discussed␈α≡in␈α≡Section␈α≡2.2.␈α≡ It␈α≡is␈α≡likewise
␈↓ ↓N␈↓expected␈α∩that␈α∪the␈α∩Spring␈α∪Quarter␈α∩document
␈↓ ↓N␈↓will␈αreport␈αpreliminary␈αresults␈αof␈αthe␈α
operating
␈↓ ↓N␈↓system␈α⊂design␈α⊃phase␈α⊂of␈α⊃Section␈α⊂2.1,␈α⊃and␈α⊂will
␈↓ ↓N␈↓also␈α∞report␈α∞successful␈α∞completion␈α∞of␈α∞at␈α∞least␈α∞2
␈↓ ↓N␈↓of␈αthe␈α␈↓βC␈↓nal␈α3␈αitems␈αof␈αthe␈α
switch␈αdevelopment
␈↓ ↓N␈↓of␈αSection␈α2.2.␈α The␈α␈↓βC␈↓nal␈αreport␈αwill␈αdetail␈αthe
␈↓ ↓N␈↓design␈α∞of␈α∞the␈α
operating␈α∞system␈α∞of␈α∞Section␈α
2.1,
␈↓ ↓N␈↓α␈↓ ε↑␈↓ `7


␈↓ ↓N␈↓α␈↓ β+Appendix C                                  ␈↓ π∞␈↓realtime␈α≠control␈α≤of␈α≠mechanical␈α≤arms␈α≠and
␈↓ ↓N␈↓α␈↓ ↓`SAIL Background in System Development       ␈↓ π∞␈↓television␈α⊂cameras,␈α⊂in␈α⊂support␈α⊂of␈α⊃research␈α⊂in
                                            ␈↓ π∞␈↓automatic␈α∂mechanical␈α∂assembly␈α∂and␈α∞computer
                                            ␈↓ π∞␈↓vision [7].
␈↓ ↓N␈↓While␈α⊃the␈α⊃primary␈α⊃interests␈α⊃of␈α∩the␈α⊃Stanford
␈↓ ↓N␈↓Arti␈↓βC␈↓cial␈αIntelligence␈αLaboratory␈αhave␈αbeen␈αin   ␈↓ π∞␈↓In␈α∩the␈α∩period␈α∩1970-73,␈α∩SAIL␈α∩sta␈↓β@␈↓␈α∩members
␈↓ ↓N␈↓arti␈↓βC␈↓cial␈α∪intelligence,␈α∪mathematical␈α∀theory␈α∪of  ␈↓ π∞␈↓designed␈α∀a␈α∀high␈α∀speed␈α∀processor␈α∀known␈α∀as
␈↓ ↓N␈↓computation,␈α
and␈α
related␈α
theoretical␈αproblems,  ␈↓ π∞␈↓"Super␈α≥Foonly",␈α≡which␈α≥featured␈α≡a␈α≥cache
␈↓ ↓N␈↓certain␈α
members␈α
of␈α∞the␈α
SAIL␈α
sta␈↓β@␈↓␈α∞have␈α
been         ␈↓ π∞␈↓memory,␈α≤user-accessible␈α≤microcode,␈α≥and␈α≤a
␈↓ ↓N␈↓involved␈α⊂for␈α∂many␈α⊂years␈α∂in␈α⊂the␈α∂development        ␈↓ π∞␈↓"console␈α∨computer"␈α∨(a␈α∨minicomputer␈α≡that
␈↓ ↓N␈↓of␈α4timesharing␈α4systems,␈α4programming            ␈↓ π∞␈↓monitors␈α~the␈α→main␈α~processor).␈α~ The␈α→latter
␈↓ ↓N␈↓languages,␈α∂and␈α∂interactive␈α∂facilities.␈α∂ Some␈α∂of  ␈↓ π∞␈↓innovation␈α→has␈α→since␈α→been␈α→included␈α~in␈α→a
␈↓ ↓N␈↓these activities are outlined below.        ␈↓ π∞␈↓number␈α
of␈α
other␈α
machines,␈α
including␈α
the␈αS-1.
                                            ␈↓ π∞␈↓After␈α∂the␈α∞design␈α∂was␈α∞completed,␈α∂it␈α∂was␈α∞made
␈↓ ↓N␈↓The␈αconcept␈αof␈αa␈αgeneral␈αpurpose␈αtimesharing      ␈↓ π∞␈↓available␈α∩to␈α∩Digital␈α∩Equipment␈α∩Corporation,
␈↓ ↓N␈↓system␈α∂was␈α∂␈↓βC␈↓rst␈α∞proposed␈α∂by␈α∂John␈α∞McCarthy         ␈↓ π∞␈↓which␈α used␈α it␈α!as␈α the␈α basis␈α!for␈α their
␈↓ ↓N␈↓when␈α∞he␈α∞was␈α∞at␈α
MIT␈α∞[2].␈α∞ That␈α∞proposal␈α
led          ␈↓ π∞␈↓Decsystem/10␈α!and␈α"Decsystem/20␈α!computer
␈↓ ↓N␈↓to␈αthe␈αpioneering␈αsystems␈αdeveloped␈αin␈αProject    ␈↓ π∞␈↓systems.␈α⊃ The␈α⊃KL10␈α⊃processor␈α⊃now␈α∩at␈α⊃SAIL
␈↓ ↓N␈↓MAC.␈α↔ McCarthy␈α_also␈α↔participated␈α_in␈α↔the          ␈↓ π∞␈↓was␈α
donated␈αby␈α
DEC␈α
out␈αof␈α
gratitude␈α
for␈αthe
␈↓ ↓N␈↓development␈αof␈αan␈αearly␈αtimesharing␈αsystem␈αat     ␈↓ π∞␈↓design contribution.
␈↓ ↓N␈↓BBN [3].
                                            ␈↓ π∞␈↓Another␈α
important␈α
outgrowth␈α
of␈α
this␈α
computer
␈↓ ↓N␈↓Shortly␈α∀after␈α∀arriving␈α∀at␈α∀Stanford␈α∀in␈α∀1962,       ␈↓ π∞␈↓design␈αproject␈αwas␈αa␈αdesign␈αautomation␈αsystem
␈↓ ↓N␈↓McCarthy␈α∂undertook␈α⊂the␈α∂development␈α⊂of␈α∂the        ␈↓ π∞␈↓known␈α"as␈α#SUDS␈α"[8],␈α#which␈α"combined
␈↓ ↓N␈↓␈↓βC␈↓rst␈α∪display-oriented␈α∪timesharing␈α∪system␈α∪[4],   ␈↓ π∞␈↓interactive␈α"drawing␈α"facilities␈α#with␈α"other
␈↓ ↓N␈↓based␈α
on␈αa␈α
PDP-1␈αcomputer␈α
with␈α
12␈αdisplays         ␈↓ π∞␈↓computer-aided␈αdesign␈αservices.␈α This␈αwas␈αthe
␈↓ ↓N␈↓and␈α∪a␈α∪link␈α∪to␈α∩an␈α∪IBM␈α∪7090.␈α∪ One␈α∩notable             ␈↓ π∞␈↓␈↓βC␈↓rst␈αsystem␈αthat␈αpermitted␈αa␈αdesigner,␈αworking
␈↓ ↓N␈↓accomplishment␈α∨of␈α∨this␈α∨project␈α∨was␈α∨the           ␈↓ π∞␈↓through␈α~a␈α→display␈α~terminal,␈α~to␈α→completely
␈↓ ↓N␈↓development␈α#of␈α#a␈α#"page␈α#editor"␈α"called            ␈↓ π∞␈↓design␈α≡complex␈α≡digital␈α≡devices,␈α≥including
␈↓ ↓N␈↓TVEDIT␈α∃that␈α∃exploited␈α∃the␈α∃capabilities␈α∀of        ␈↓ π∞␈↓printed␈α⊂circuit␈α⊂boards␈α⊂and␈α⊂backpanel␈α∂wiring.
␈↓ ↓N␈↓displays␈α≡in␈α≡text␈α≡editing.␈α≡ This␈α≡was␈α≥the           ␈↓ π∞␈↓The␈α
system␈α
automatically␈α
produces␈α
artwork␈α
for
␈↓ ↓N␈↓forerunner␈α∪of␈α∪screen␈α∀editors␈α∪now␈α∪in␈α∀use␈α∪at         ␈↓ π∞␈↓PC␈α∪boards␈α∪and␈α∪control␈α∪tapes␈α∪for␈α∪automatic
␈↓ ↓N␈↓SAIL␈α∪and␈α∩in␈α∪a␈α∩number␈α∪of␈α∪other␈α∩advanced             ␈↓ π∞␈↓wiring␈α∃machines.␈α∀ SUDS␈α∃has␈α∀been␈α∃used␈α∀to
␈↓ ↓N␈↓timesharing systems.                        ␈↓ π∞␈↓design␈α∂␈↓βC␈↓ve␈α∞large␈α∂computers␈α∞so␈α∂far,␈α∞as␈α∂well␈α∞as
                                            ␈↓ π∞␈↓countless␈α∞other␈α∞digital␈α∞devices.␈α∞ It␈α∞is␈α∞currently
␈↓ ↓N␈↓When␈α!the␈α!SAIL␈α!computer␈α!facility␈α was              ␈↓ π∞␈↓in␈α⊃use␈α∩at␈α⊃MIT,␈α∩Carnegie-Mellon␈α⊃University,
␈↓ ↓N␈↓assembled␈α∪in␈α∀1966,␈α∪the␈α∀sta␈↓β@␈↓␈α∪of␈α∀the␈α∪PDP-1           ␈↓ π∞␈↓and␈α∀Digital␈α∪Equipment␈α∀Corporation,␈α∪among
␈↓ ↓N␈↓timesharing␈αproject␈αbecame␈αthe␈αnucleus␈αof␈αthe     ␈↓ π∞␈↓other␈α⊗places,␈α⊗and␈α⊗is␈α⊗the␈α⊗basis␈α⊗of␈α⊗the␈α∃S-1
␈↓ ↓N␈↓computer␈α system␈α∨sta␈↓β@␈↓␈α that␈α developed␈α∨a            ␈↓ π∞␈↓Design System.
␈↓ ↓N␈↓display-oriented␈α⊗system␈α↔on␈α⊗a␈α↔DEC␈α⊗PDP-6
␈↓ ↓N␈↓computer␈α∃initially␈α∃and␈α∃later␈α∃on␈α∃KA10␈α∀and          ␈↓ π∞␈↓Other␈α∂interests␈α∞of␈α∂the␈α∞SAIL␈α∂sta␈↓β@␈↓␈α∂include␈α∞the
␈↓ ↓N␈↓KL10␈α→processors.␈α→ There␈α→are␈α→currently␈α→70         ␈↓ π∞␈↓development␈α≠of␈α≠assemblers␈α≠[9],␈α≠the␈α≠LISP
␈↓ ↓N␈↓display␈αterminals␈α
connected␈αto␈α
the␈αsystem,␈α
most   ␈↓ π∞␈↓family␈αof␈αprogramming␈αlanguages␈αand␈αsystems
␈↓ ↓N␈↓of␈α⊃them␈α⊃with␈α∩full␈α⊃graphics␈α⊃capability␈α∩[5,␈α⊃6].      ␈↓ π∞␈↓[10,␈α
11,␈α∞12],␈α
the␈α∞SAIL␈α
language␈α∞and␈α
compiler
␈↓ ↓N␈↓There␈α∪is␈α∪also␈α∪a␈α∪connection␈α∪to␈α∪the␈α∩Arpanet,         ␈↓ π∞␈↓[13],␈α
text␈α
editors␈α
[14,␈α
15],␈αinteractive␈α
debuggers
␈↓ ↓N␈↓permitting␈α$remote␈α$access␈α$to␈α$and␈α#from             ␈↓ π∞␈↓[16],␈α⊃document␈α⊂compilers␈α⊃[17],␈α⊃and␈α⊂computer
␈↓ ↓N␈↓hundreds␈α~of␈α~other␈α~computers␈α~around␈α~the           ␈↓ π∞␈↓communication systems [18].
␈↓ ↓N␈↓world.␈α
 In␈α∞addition␈α
to␈α∞providing␈α
conventional
␈↓ ↓N␈↓timesharing␈α∨services,␈α∨this␈α∨system␈α∨handles       ␈↓ π∞␈↓The␈α
backgrounds␈α
of␈α
the␈α
individuals␈α
who␈α
will
␈↓ ↓N␈↓αAppendix C␈↓ ∧@SAIL Background in System Development␈↓ ←8


␈↓ ↓N␈↓carry␈α⊃out␈α⊃the␈α⊃proposed␈α⊃work␈α⊃are␈α∩as␈α⊃follows.        ␈↓ π∞␈↓[5]    Brian Harvey and Martin Frost,
␈↓ ↓N␈↓John␈α_McCarthy,␈α↔who␈α_will␈α_provide␈α↔overall          ␈↓ π∞␈↓␈↓ π>␈↓αMonitor Command Manual␈↓, SAILON-
␈↓ ↓N␈↓direction␈α⊗of␈α⊗the␈α⊗project,␈α⊗is␈α⊗a␈α⊗Professor␈α∃of        ␈↓ π∞␈↓␈↓ π>54.5, January 1976.
␈↓ ↓N␈↓Computer␈α
Science␈α∞and␈α
Director␈α
of␈α∞SAIL.␈α
 He
␈↓ ↓N␈↓has␈α∂26␈α∂years␈α∞experience␈α∂as␈α∂a␈α∂faculty␈α∞member        ␈↓ π∞␈↓[6]    McCarthy, John, Lester Earnest, D. Raj.
␈↓ ↓N␈↓at␈α∩a␈α∩number␈α∩of␈α∩major␈α∩universities␈α∩and␈α∩has          ␈↓ π∞␈↓␈↓ π>Reddy, Pierre Vicens, ␈↓αA Computer with
␈↓ ↓N␈↓been␈α a␈α principal␈α innovator␈α!in␈α arti␈↓βC␈↓cial          ␈↓ π∞␈↓α␈↓ π>Hands, Eyes, and Ears␈↓, ␈↓↓Proc. AFIPS Conf.␈↓
␈↓ ↓N␈↓intelligence,␈α<mathematical␈α=theory␈α<of           ␈↓ π∞␈↓␈↓ π>(FJCC), 1968.
␈↓ ↓N␈↓computation,␈α⊗and␈α⊗timesharing␈α↔systems.␈α⊗ Les
␈↓ ↓N␈↓Earnest,␈α⊃who␈α⊃is␈α⊃Associate␈α⊃Director␈α∩of␈α⊃SAIL,       ␈↓ π∞␈↓[7]    Martin Frost, ␈↓αUUO Manual␈↓, SAILON-
␈↓ ↓N␈↓will␈α⊂handle␈α∂much␈α⊂of␈α∂the␈α⊂management␈α⊂of␈α∂the          ␈↓ π∞␈↓␈↓ π>55.5, October 1977.
␈↓ ↓N␈↓project.␈α≠ He␈α≤has␈α≠24␈α≠years␈α≤experience␈α≠in
␈↓ ↓N␈↓programming,␈α_computer␈α_system␈α_design␈α↔and         ␈↓ π∞␈↓[8]    Richard Helliwell, ␈↓αStanford Drawing
␈↓ ↓N␈↓technical management.                       ␈↓ π∞␈↓α␈↓ π>Program␈↓, SAIL Program Note, 1971.

␈↓ ↓N␈↓Je␈↓β@␈↓␈α→Rubin,␈α→who␈α→will␈α→head␈α→the␈α_operating            ␈↓ π∞␈↓[9]    Fred Wright and Ralph Gorin, ␈↓αFAIL␈↓,
␈↓ ↓N␈↓system␈α∞design␈α∞e␈↓β@␈↓ort,␈α∂is␈α∞currently␈α∞in␈α∂charge␈α∞of     ␈↓ π∞␈↓␈↓ π>Stanford AI Memo AIM-226, April 1974.
␈↓ ↓N␈↓system␈α∞programming␈α
at␈α∞SAIL␈α
and␈α∞has␈α
twelve
␈↓ ↓N␈↓years␈α⊂experience␈α⊂as␈α⊂a␈α⊂programmer,␈α⊂including      ␈↓ π∞␈↓[10]    John McCarthy, ␈↓αRecursive Functions
␈↓ ↓N␈↓six␈αyears␈αas␈αa␈αsystem␈αprogrammer␈αat␈αMIT␈αand         ␈↓ π∞␈↓α␈↓ π>of Symbolic Expressions␈↓, ␈↓↓Communications
␈↓ ↓N␈↓four␈α∃years␈α∃in␈α∃this␈α∃capacity␈α∃at␈α∃SAIL.␈α∃ Ted          ␈↓ π∞␈↓↓␈↓ π>of the ACM␈↓, April 1960.
␈↓ ↓N␈↓Panofsky,␈αwho␈αwill␈αdesign␈αthe␈αcrossbar␈αswitch,
␈↓ ↓N␈↓is␈αhead␈αof␈αthe␈αSAIL␈αComputer␈αFacility␈αgroup,       ␈↓ π∞␈↓[11]    John McCarthy, ␈↓↓et al, LISP 1.5
␈↓ ↓N␈↓has␈α⊂been␈α∂a␈α⊂design␈α⊂engineer␈α∂at␈α⊂SAIL␈α⊂for␈α∂ten          ␈↓ π∞␈↓↓␈↓ π>Programmer's Manual,␈↓, MIT Press, 1962.
␈↓ ↓N␈↓years,␈α∃and␈α∃had␈α∃several␈α∃years␈α⊗of␈α∃electronics
␈↓ ↓N␈↓experience␈αbefore␈αthat.␈α
 Martin␈αFrost␈αhas␈α
been    ␈↓ π∞␈↓[12]    David C. Smith, ␈↓αMLISP User's
␈↓ ↓N␈↓a systems programmer at SAIL for ␈↓βC␈↓ve years. ␈↓ π∞␈↓α␈↓ π>Manual␈↓, Stanford AI Memo AIM-84,
                                            ␈↓ π∞␈↓␈↓ π>January 1969.
␈↓ ↓N␈↓α␈↓ β5References 
                                            ␈↓ π∞␈↓[13]    John Reiser (ed.), ␈↓αSAIL␈↓, Stanford AI
␈↓ ↓N␈↓[1]    Tom McWilliams and Curt Widdoes,     ␈↓ π∞␈↓␈↓ π>Memo AIM-289, August 1976.
␈↓ ↓N␈↓␈↓ ↓}␈↓αThe S-1 Memory Interface␈↓, October 3,
␈↓ ↓N␈↓␈↓ ↓}1977.                                       ␈↓ π∞␈↓[14]    William Weiher and Steve Savitzky,
                                            ␈↓ π∞␈↓␈↓ π>␈↓αSon of Stopgap␈↓, SAILON-50.3, October
␈↓ ↓N␈↓[2]    John McCarthy, ␈↓αA Time Sharing        ␈↓ π∞␈↓␈↓ π>1970.
␈↓ ↓N␈↓α␈↓ ↓}Operator Program for our Projected IBM
␈↓ ↓N␈↓α␈↓ ↓}709␈↓, memo to P. M. Morse, MIT, January      ␈↓ π∞␈↓[15]    Arthur Samuel and Martin Frost, ␈↓αE
␈↓ ↓N␈↓␈↓ ↓}1, 1959.                                    ␈↓ π∞␈↓α␈↓ π>Text Editor␈↓, Program Note, December
                                            ␈↓ π∞␈↓␈↓ π>1977.
␈↓ ↓N␈↓[3]    John McCarthy, S. Boilen, E. Fredkin,
␈↓ ↓N␈↓␈↓ ↓}J.C.R. Licklider, ␈↓αA Time-sharing            ␈↓ π∞␈↓[16]    Phil Petit, ␈↓αRAID␈↓, SAILON-58.1,
␈↓ ↓N␈↓α␈↓ ↓}Debugging System for a Small                ␈↓ π∞␈↓␈↓ π>February 1970.
␈↓ ↓N␈↓α␈↓ ↓}Computer␈↓, ␈↓↓Proc. AFIP Conf.␈↓ (SJCC), Vol.
␈↓ ↓N␈↓␈↓ ↓}23, 1963.                                   ␈↓ π∞␈↓[17]    Larry Tesler, ␈↓αPUB, the Document
                                            ␈↓ π∞␈↓α␈↓ π>Compiler␈↓, SAILON-70, September 1970.
␈↓ ↓N␈↓[4]    John McCarthy, D. Brian, G. Feldman,
␈↓ ↓N␈↓␈↓ ↓}J. Allen, ␈↓αTHOR ␈↓␈↓βe␈↓␈↓α A Display Based            ␈↓ π∞␈↓[18]    John McCarthy and Les Earnest,
␈↓ ↓N␈↓α␈↓ ↓}Time-sharing System␈↓, ␈↓↓Proc. AFIPS Conf.␈↓      ␈↓ π∞␈↓␈↓ π>␈↓αDIALNET and the Home Terminal␈↓, ␈↓↓Proc.
␈↓ ↓N␈↓␈↓ ↓}(FJCC), Vol. 30, Thompson, Washington,      ␈↓ π∞␈↓↓␈↓ π>Computer Faire␈↓, San Francisco, 1977.
␈↓ ↓N␈↓␈↓ ↓}D.C., 1967.
␈↓ ↓N␈↓α␈↓ ε↑␈↓ `9


␈↓ ↓N␈↓α␈↓ β*Appendix D                                  ␈↓ π∞␈↓      h. Support Personnel:
␈↓ ↓N␈↓α␈↓ βOBudget 
                                            ␈↓ π∞␈↓         (1) Secretary (75%) ␈↓ 
Z9.0␈↓ 
} ␈↓ ,8,839

␈↓ ↓N␈↓␈↓ ↓lTwelve months beginning 1 January 1979      ␈↓ π∞␈↓         (2) Elect. Tech. (25%) ␈↓ 
Z3.0␈↓ 
} ␈↓ ,4,198
                                            ␈↓ π∞␈↓␈↓ _______
␈↓ ↓N␈↓␈↓ ∧d␈↓αPerson␈↓ ¬>                                      ␈↓ π∞␈↓      Total Salaries & Wages ␈↓ ∞106,031
␈↓ ↓N␈↓α␈↓ ∧ZMonths␈↓ ¬>
␈↓ ↓N␈↓αA. Salaries and Wages␈↓                       ␈↓ π∞␈↓␈↓αB. Sta␈↓␈↓β`␈↓␈↓α Bene␈↓␈↓βc␈↓␈↓αts␈↓ ␈↓ ≥21,418
                                            ␈↓ π∞␈↓     19.5% till 1 Sept.'79,
␈↓ ↓N␈↓   1. Senior Personnel:                     ␈↓ π∞␈↓     21.6% thereafter

␈↓ ↓N␈↓      a. John McCarthy ␈↓ ¬~0.8␈↓ ¬> ␈↓ ¬l2,956            ␈↓ π∞␈↓␈↓αC. Travel␈↓ (domestic) ␈↓ ,7,500
␈↓ ↓N␈↓         Prof. of Computer Science
␈↓ ↓N␈↓         5% acad. yr., 10% summer           ␈↓ π∞␈↓␈↓αD. Other direct costs ␈↓ ␈↓ ≥22,700
                                            ␈↓ π∞␈↓     (e.g. telephone, publications,
␈↓ ↓N␈↓      b. Forest Baskett ␈↓ ¬~3.4␈↓ ¬> ␈↓ ¬l8,890           ␈↓ π∞␈↓     o␈↓α␈↓β@␈↓α␈↓ice supplies, copying,
␈↓ ↓N␈↓         Assoc. Prof. of C.S. & E.E.        ␈↓ π∞␈↓     postage, computer repair services)
␈↓ ↓N␈↓         25% acad. yr., 40% sum.
                                            ␈↓ π∞␈↓␈↓αE. Indirect Costs␈↓ ␈↓ ≥91,436
␈↓ ↓N␈↓      c. Lester Earnest ␈↓ ¬~1.2␈↓ ¬> ␈↓ ¬l4,007           ␈↓ π∞␈↓     (58% of A thru D)
␈↓ ↓N␈↓         Senior Research Associate
␈↓ ↓N␈↓         10%                                ␈↓ π∞␈↓␈↓αF. Permanent Equipment␈↓ ␈↓ ,7,200
                                            ␈↓ π∞␈↓     3 Datamedia display terminals
␈↓ ↓N␈↓   2. Other Personnel (full time except
␈↓ ↓N␈↓      where speci␈↓α␈↓βC␈↓α␈↓ed otherwise):            ␈↓ π∞␈↓␈↓ _______
                                            ␈↓ π∞␈↓␈↓αG. Total Costs ␈↓ ⊃256,285
␈↓ ↓N␈↓      a. John Hennessey ␈↓ ¬~3.0␈↓ ¬> ␈↓ ¬l5,966
␈↓ ↓N␈↓         Asst. Prof. of E.E.
␈↓ ↓N␈↓         20% acad. yr., 40% sum.

␈↓ ↓N␈↓      b. Arthur Samuel ␈↓ ¬~6.0␈↓ ¬> ␈↓ ¬]18,414
␈↓ ↓N␈↓         Adjunct Prof. of C.S.
␈↓ ↓N␈↓         50%

␈↓ ↓N␈↓      c. Martin Frost ␈↓ ¬~4.0␈↓ ¬> ␈↓ ¬l6,547
␈↓ ↓N␈↓         Systems Programmer
␈↓ ↓N␈↓         25%

␈↓ ↓N␈↓      d. Mark Lebrun ␈↓ ¬12.0␈↓ ¬> ␈↓ ¬]18,414
␈↓ ↓N␈↓         Systems Programmer

␈↓ ↓N␈↓      e. Armando Rodriguez ␈↓ ¬12.0␈↓ ¬> ␈↓ ¬]16,352
␈↓ ↓N␈↓         Systems Programmer

␈↓ ↓N␈↓      f. Hilding Elmquist ␈↓ ¬~3.0␈↓ ¬> ␈↓ ¬l3,683
␈↓ ↓N␈↓         Systems Programmer, 25%

␈↓ ↓N␈↓      g. Student Res. Assist. ␈↓ ¬~7.5␈↓ ¬> ␈↓ ¬l7,765
␈↓ ↓N␈↓         50% acad. yr., 100% sum.